1. Field of the Invention
The present invention relates to a test method for semiconductor image pickup devices, and more particularly relates to a method used for tests in which certain areas within an image plane of an image pickup device are specified for testing.
2. Description of the Related Art
Previously, in testing solid-state image pickup devices such as a CCD which constitutes and outputs a image data by using photo sensors arranged one-dimensionally or two-dimensionally, in addition to ordinary test items for integrated circuits, it is required to find the number of damaged portions on the pickup screen, kinds of sensitivity irregularities called xe2x80x9cshadingxe2x80x9d or the like by various image processing calculations, and to judge the quality of the image pickup device. In the mass production test, in order to shorten the image processing time for a vast number of pixels, test equipment has often been equipped with specialized hardware for an image pre-processor which performs, for example, the sensitivity compensation corresponding to the color by taking out pixels in specified areas or the like as shown in Japanese Patent Publication for opposition (Kokoku) No. 1-61279.
When developing test procedures using such test equipment, in order to obtain the exact number of pixel data in row and column of an image pickup device and reference levels, it has been required for the test engineer to set the principal definitions of the coordinates of the start and end points of the optical black area (area optically masked) provided on the image pickup device, the coordinates of the start and end points of the pixel area where the color filter is arranged, the ordering of different color filters or the like to the hardware in the test equipment, and to construct a test program. However, recently, along with progresses in the area of digital still camera and CMOS image sensors, image pickup devices having a lot of pixels and a complex picture constitution have become common, and accordingly, it has increasingly become impossible to deal with testing requirements with specialized hardware only, and in such cases, some extra peripheral circuits or software processing has been added after hardware pre-processing to deal with tougher requirements, and the test development work has become considerably more tedious.
On the other hand, with the recent improvement of the computer technology for the multimedia or the like, it has become possible to obtain an image processing time comparable to that of a test using specialized hardware with the software processing alone, and special hardware is no longer essential for testing units in many instances. This removes limitations resulting from hardware functionalities and improves the flexibility. On the contrary, however, the setting of pixel areas and the image processing may be different depending the test engineer who develops the test define such tests. This can be a factor in preventing the test program from being reused.
According to the example disclosed in Japanese Patent Publication for Opposition No. 1-61279, a mask memory corresponding to each pixel of an image pickup device is prepared, and the definitions of the optical black and the color of the color filter are written therein. If there is a mask memory which corresponds one-to-one to each pixel, an area with an arbitrary shape can be specified, but actually, the specification is made such that the mask memory is set in rectangular areas specified by (1) the start coordinate, (2) the width, and (3) the height of the area. In many cases, simply such areas as area 101 and area 102 shown in FIG. 1 are specified. Since it is impossible to perform image processing by dividing areas more finely with hardware only, such divisions are described using software. It is, however, difficult to grasp the relationship between any two areas, making the test development work troublesome. Furthermore, in order to specify an area left after a rectangle area is cut out, many rectangles have to be connected to define such an area, again. For example, when specifying area 103 in FIG. 1, it is necessary to connect a total of 5 rectangular areas including an upper rectangle, an area between areas 101 and 102, a rectangle on the left side of area 101, a rectangle on the right side of area 102, and a lower rectangle. Setting and changing specified areas become extremely troublesome.
Moreover, it is often necessary to further divide the area where the color filter is arranged (in case of black-and-white image pickup devices, a part which is not optical black) into several areas and perform the image processing corresponding to each area. For example, in xe2x80x9czoning rules of shading of image signalsxe2x80x9d shown on Page 9 of the data sheet for a solid-state image pickup device ICX205AK published by Sony Corporation (in Japanese), it is specified to divide an area into 3 areas as shown in FIG. 2. In a testing unit described in Japanese Patent Publication for Opposition No. 1-61279, the masking of the disregarded area only can be performed by hardware processing, and therefore, it is necessary to separately define specifications using software processing after the hardware processing, in order to extract data for zones II and IIxe2x80x2.
As for the division of color filter areas, as shown in the xe2x80x9cColor Signal Evaluation Methodxe2x80x9d of Japanese Patent Publication for Opposition (Kokoku) No. 3-101582, an area is divided into a central part and several small peripheral parts. As shown in FIG. 3, however, if area 201 of the most important central part is taken first, and if the middle part left after cutting out the outermost peripheral area 206 is divided into 4 pieces in the four corner directions, the pieces are processed as areas 202, 203, 204, 205. Then, the specifications of a number of non-rectangular areas would become necessary, and descriptions using software also become complex. Furthermore, depending on the way of using an image pickup device to be tested, the size of the central area 201 changes, and depending on the manufacturing process for color filters, such adjustments as increasing the width of the peripheral area 206 to be cut out are often required, consuming considerable man-hours.
With a descriptive method similar to sequential programming which is common in the digital test, it is also possible to deal with shapes other than rectangles. That is, in addition to the specifications of (1) the start coordinate, (2) the width, and (3) the height, by accepting (4) the number of repeats and (5) subroutine calls, it is possible to describe various shapes including simple rectangular areas and complex polygons or a collection of discrete points in terms of software programs. Alternatively, only for the areas which are not rectangular and cannot be described by the conventional specification of (1) the start coordinate, (2) the width, and (3) the height, a pattern is generated by another program, and the result thereof is read into such a device as a xe2x80x9cmask memoryxe2x80x9d described in the test equipment of Japanese Patent Publication for Opposition No. 1-61279, or numerical values may be stored in array valuables corresponding to a mask memory to be referred to for software processing, so that the area may be specified.
FIG. 11 shows the flow of processing image pickup device data according to conventional methods. After retrieving data 601 from an image pickup device which is simple one-dimensional dump data, mask data stored in coordinates of a mask memory for each data is retrieved while counting addresses with a horizontal address counter 605 and a vertical address counter 606, and it is checked (607) whether such data matches the attributes of a desired area specification or not (608) (in this case, whether or not the attribute is an xe2x80x9cACxe2x80x9d indicating an active area), and when it matches the attribute, the image pickup device data is passed to the next processing as selected data 602. Next, this selected data 602 is subjected to the image processing and parameter extraction (604), and necessary judgment is performed (611), so that an image pickup device may be tested. Here, each mask data in a mask memory 609 is defined as a rectangular area, or it is prepared by storing a pattern with an arbitrary non-rectangular shape created by another program (610).
In this method, intuitive understanding of mask memory areas described by a sequence program or an external program can be difficult, and in addition to that, variable areas equal to or larger than the area of the image pickup device to be tested are required during the software processing, and therefore, the consumption of memory is massive due to a large number of pixels to be tested. It is also necessary to refer to large array variables for every pixel, and therefore, the throughput of software processing may significantly be lowered unlike hardware processing.
As a simple example of a conventional method, an area with a free shape is inputted by using a mouse pointer or the like similarly to a plotter software. However, while this method has the advantage that the operator can easily and intuitively understand a value when inputting it, the lowering of the throughput of the software image processing is inevitable since it is necessary to determine whether the inputted specified area can be stored in a large number of array variables to be referred to afterwards, or shapes and coordinates specified during input operations should be stored so that their correspondence to each pixel can be calculated and found during actual image processing.
Conventionally, it has been required to specify an area by specifying rectangular areas and the connection thereof in an image pickup device, and therefore, the specification of the peripheral area after the cutting out of a central rectangular area and the specification or change of the areas made by the division have been troublesome. Accordingly, it is an object of the present invention to solve the above problems and provide an easier method for specifying, for example, a peripheral area around a central rectangular area without connecting several rectangular areas.
Furthermore, it is another object of the present invention to attain a proper degree of freedom which makes it possible to specify shapes other than simple rectangles when specifying and testing areas in an image pickup device without any increases in the consumption of memory or without any significant lowering of the throughput of software image processing caused by an increased degrees of freedom in area specification.
The present invention provides a test method of an image pickup device, comprising the steps of: preparing a plurality of layers in which a rectangular area may be specified; giving a priority for each layer or defining a priority among layers; placing the layers on top of each other so as to divide an image plane of an image pickup device into a plurality of areas; specifying a certain area among the plurality of areas; and performing a data analysis as for pixels of an image pickup device in a specified area.
The present invention further provides a method of judging to which area a given point in an image pickup plane belongs, comprising the steps of: preparing a plurality of layers in which a rectangular area may be specified; giving a priority for each layer; placing the layers on top of each other in accordance with the priority so as to divide an image pickup plane of an image pickup device into a plurality of areas; specifying a certain area among the plurality of areas; searching a rectangular area to which the horizontal and vertical coordinates of a certain point in an image pickup plane belong in turn from an upper layer; and terminating the search when a rectangular area to which the point belongs has been found and judging that the point belongs to the rectangular area at which the search is terminated.
A computer-readable recording medium in which a program for implementing the above method is recorded is also covered by the present invention.
The method of the present invention can be implemented on any suitable computer-based system that has arithmetic means such as a CPU, input means such as a mouse or keyboard, and display means such as a CRT.
In the present specification, the term xe2x80x9crectanglexe2x80x9d is used to include xe2x80x9csquarexe2x80x9d, according to the formal definition of xe2x80x9crectanglexe2x80x9d. Furthermore, a straight line is treated as a rectangle with the width or height of 1, and a point is treated as a rectangle (square) with the width and height of 1.
According to the present invention, a suitable degree of freedom is attained in the specification of the peripheral area of a rectangle or the like so that complications associated with the area specification may be relieved while maintaining the intuitiveness of the conventional area specification using rectangles and a high software throughput, and in the meantime. Test programs can be developed with ease and reused for different devices more readily.